/**
 * 模态框
 */
module.exports = function($scope, $state, $stateParams, $modalInstance, $resource,item){

    $scope.title = item;

    $scope.center_list = [
        { 'label': '系统中心(systemCenter)', 'value': 'sc'},
        { 'label': 'docking(dockingCenter)', 'value': 'dc'},
        { 'label': '支付中心(payCenter)', 'value': 'pc'},
        { 'label': '用户中心(userCenter)', 'value': 'uc'},
        { 'label': '票务中心(ticketCenter)', 'value': 'tc'},
        { 'label': '线路中心(lineCenter)', 'value': 'lc'},
        { 'label': '卡务中心(cardCenter)', 'value': 'cdc'},
        { 'label': '公共服务(publicsCenter)', 'value': 'puc'},
        { 'label': '常用服务(generalCenter)', 'value': 'gc'},
        { 'label': '信息服务(infoCenter)', 'value': 'ic'},
        { 'label': '备注服务(remarkCenter)', 'value': 'rc'},
        { 'label': '购买服务(buyCenter)', 'value': 'bc'},
        { 'label': '活动中心(activeCenter)', 'value': 'ac'},
        { 'label': '商客(merchantCenter)', 'value': 'mc'},
        { 'label': '积分(coinCenter)', 'value': 'cc'},
        { 'label': '旅游局(govgeneralCenter)', 'value': 'ggc'},
        { 'label': '微店(weshopCenter)', 'value': 'wc'},
        { 'label': '危险品(dangershopCenter)', 'value': 'dsc'},
    ];

    //查询接口已绑定的其他接口
    function init() {
		$resource('/api/as/sc/sysfun/getBindFunList', {}, {}).save({'id': item.id}, function(res){
			if(res.errcode === 0){
				$scope.sel_list = res.data;
                angular.forEach($scope.sel_list, function(item){
                    item.status = true;
                });
			}else{
				alert(res.errmsg);
			}
		});
    };
    init();

    $scope.search = function (){
        $resource('/api/as/sc/menu/getForMenuList', {}, {}).save({'center_code': $scope.search.center.value, 'type': '1'}, function (res) {
            if (res.errcode === 0) {
                $scope.interface_list = res.data;
            } else {
                alert(res.errmsg);
            }
        });
    };

    //选择并添加接口
    $scope.selectApi = function () {
        for(var i = 0; i < $scope.sel_list.length; i++){
            if($scope.search.iface.id == $scope.sel_list[i].bind_function_id){
                return;
            }
        }
        var temp = {
            'id': item.id,
            'bind_function_id': $scope.search.iface.id,
            'status': false,
            'flag': true
        };
        $scope.sel_list.push(temp);
    };

    //编辑已绑定的接口
    $scope.update = function (item) {
        item.status = false;
    };

    //删除已选接口
    $scope.remove = function (index) {
        if(confirm('确认要删除吗？')==true){
            if(!$scope.sel_list[index].flag){
                $resource('/api/as/sc/sysfun/delBindApi', {}, {}).save($scope.sel_list[index], function(res){
                    if(res.errcode === 0){
                        // alert('删除成功');
                    }else{
                        alert(res.errmsg);
                    }
                });
            }
            $scope.sel_list.splice(index,1);
        }
    };

    //保存
    $scope.save = function (item) {
        if(item.bind_key && !item.bind_value){
            alert('请填写绑定描述信息!');
            return;
        } else if(!item.bind_key && item.bind_value){
            alert('请填写绑定键值!');
            return;
        }
        $resource('/api/as/sc/sysfun/saveBindApi', {}, {}).save(item, function (res) {
            if (res.errcode === 0) {
                item.status = true;
                delete item.flag;   //删除属性
                alert('保存成功');
            } else {
                alert(res.errmsg);
            }
        });

    };

    //取消
    $scope.cancel = function () {
        $modalInstance.dismiss('cancel');
    };

};